آپدیت لیستی از رکوردها در Sql Server - آپدیت گروهی اطلاعات در Sql Server
در Sql Server ما میتونیم یک لیست از اطلاعات رو به صورت همزمان و به به صورت گروهی در یک جدول ذخیره کنیم. برای این کار از دستور Select استفاده میشه.
INSERT INTO Table (col1, col2, col3)
SELECT col1, col2, col3
FROM other_table
WHERE sql = 'cool'
در قطعه کد بالا با استفاده از دستور Insert و Select یک گروه از اطلاعات رو داخل دیتابیس ذخیره می کنیم.
اما حالا من یک جدول موقت دارم که می خوام توسط اون یک گروه از رکوردها رو در جدول دیگه آپدیت کنم.
کدی که برای این کار من نوشتم مشابه کد زیر هست. اما متاسفانه به درستی این کدها کار نمیکنن.
UPDATE Table SET col1, col2
SELECT col1, col2
FROM other_table
WHERE sql = 'cool'
WHERE Table.id = other_table.id
آیا راهی هست که بشه مثل Insert به صورت گروهی رکوردها رو آپدیت هم کرد ؟ در واقع می خوام بدونم آپدیت گروهی اطلاعات در Sql Server به چه صورتی انجام میشه ؟
سلام. در حالت آپدیت باید وقتی نام ستون رو آوردید مقدار رو هم بهش بدید و بعدا برید سراغ ستون بعدی. مانند زیر عمل کنید.
UPDATE Table SET col1 = (SELECT col1 FROM other_table WHERE sql = 'cool'),
col2 = (SELECT col2 FROM other_table WHERE sql = 'cool')
WHERE Table.id = other_table.id
فقط در این حالت باید تعداد رکوردهای سلکت شده که داخل پرانتز قرار گرفته با تعداد سلکتی که در جدول اصلی قرار است آپدیت شود برابر باشد.
شما می تونید برای استفاده از دستور Select هنگام Update و یا آپدیت گروهی رکوردها در Sql Server به صورت زیر کار کنید :
UPDATE
Table_A
SET
Table_A.col1 = Table_B.col1,
Table_A.col2 = Table_B.col2
FROM
Some_Table AS Table_A
INNER JOIN Other_Table AS Table_B
ON Table_A.id = Table_B.id
WHERE
Table_A.col3 = 'cool'
دستور بالا خیلی واضح این عملیات رو نمایش داده.
موفق باشید
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
- حذف کامل یک رکورد در جدول ریلیشن شده
- مقایسه ساختار دو دیتابیس در Sql Server
- اشکال در ایجاد کلید خارجی در Sql Server
- تفاوت اوراکل و Sql Server چیست
- جابه جایی سطر و ستون در Sql Server
- استفاده از Stored Procedure در انتیتی فریم ورک code First
- دلیل پرش 1000 تایی خودکار فیلد identity در Sql server
- مشکل نمایش ندادن Data Type موقع تایپ در Sql Server
- کار با تاریخ شمسی وساعت (استفاده از توابع )
- دلیل افزایش حجم Database بعد از ری استور در هاست Plesk